An autonomous or semi-autonomous robot must be capable of reacting to unexpected events. For example, a planned path or trajectory of the robot may become obstructed, e.g., by a static obstacle (e.g., an unmoving obstacle such as an unexpected piece of furniture) or a dynamic obstacle (e.g., a passerby or another robot). Additionally or alternatively, the planned path may become less desirable, e.g., because a hazard arises in the path (e.g., sprinkler, spilled fluids, etc.). When either happens, the robot should be able to react to avoid the obstacle or hazard, while still continuing to perform its assigned task within any associated constraints.
Autonomous and semi-autonomous robots may be capable of calculating and traversing alternative paths on-the-fly to avoid unexpected obstacles and hazards. However, as numbers of robots and potential hazards/obstacles in an environment increase—especially where the robots are deployed in the environment without advance knowledge of other robots operating in the environment—the more chaotic the environment will become. Once autonomous and semi-autonomous robots start traversing alternative paths to avoid hazards or obstacles, their future trajectories may become less predictable, increasing entropy in the environment and, as a consequence, increasing the likelihood that robots will encounter additional hazards and/or obstacles (such as each other). Additionally, taking alternative paths around obstacles or hazards may affect robots' abilities to perform assigned tasks satisfactorily (e.g., within various constraints).